package com.ak.demo.controller;

import com.ak.demo.entity.User;
import com.alibaba.fastjson.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.handler.annotation.MessageMapping;
import org.springframework.messaging.simp.SimpMessagingTemplate;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

/**
 * 适用于 qq 的聊天室，聊天室一直存在的，并不是会消失的
 * /queue/<queue name>
 *
 * @author bn
 */
@Controller
public class QueueController {

    @RequestMapping("/queue")
    public String kk(){
        return "queue";
    }


    @Autowired
    private SimpMessagingTemplate template;

    /**
     * 点对点
     */
    @MessageMapping("/queueUser")
    public void kk(User user){
        template.convertAndSend("/queue/"+user.getToId(), JSONObject.toJSONString(user));
    }


    /**
     * 实现不了群发，因为群发的时候 ，队列只能发送一次
     * @param user
     */
    @MessageMapping("/queueAll")
    public void k2(User user){
        template.convertAndSend("/queue/all",JSONObject.toJSONString(user));
    }

}
